home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 140 / Gekkan Dennou Club - 2000.1 Vol. 140 (Japan).7z / Gekkan Dennou Club - 2000.1 Vol. 140 (Japan) (Track 1).bin / tools / has060 / hassrc87.lzh / regname.s < prev    next >
Text File  |  1999-06-09  |  10KB  |  273 lines

  1. ;----------------------------------------------------------------
  2. ;    X68k High-speed Assembler
  3. ;        レジスタ名テーブル
  4. ;        < regname.s >
  5. ;
  6. ;    $Id: regname.s,v 1.7  1999  6/ 9(Wed) 21:05:13 M.Kamada Exp $
  7. ;
  8. ;        Copyright 1990-94  by Y.Nakamura
  9. ;              1996-99  by M.Kamada
  10. ;----------------------------------------------------------------
  11.  
  12.     .include    has.equ
  13.     .include    cputype.equ
  14.     .include    register.equ
  15.  
  16.     .cpu    68000
  17.     .text
  18.  
  19.  
  20. ;----------------------------------------------------------------
  21. ;    レジスタ名テーブル
  22. ;----------------------------------------------------------------
  23. regtbl    .macro    regname,regcode,type
  24.     .dc.b    regname,0,((type)>>8).and.$FF,(type).and.$FF,regcode
  25.     .endm
  26.  
  27. reg_tbl::
  28.     regtbl    'd0',    REG_D0,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  29.     regtbl    'd1',    REG_D1,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  30.     regtbl    'd2',    REG_D2,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  31.     regtbl    'd3',    REG_D3,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  32.     regtbl    'd4',    REG_D4,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  33.     regtbl    'd5',    REG_D5,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  34.     regtbl    'd6',    REG_D6,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  35.     regtbl    'd7',    REG_D7,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  36.  
  37.     regtbl    'a0',    REG_A0,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  38.     regtbl    'a1',    REG_A1,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  39.     regtbl    'a2',    REG_A2,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  40.     regtbl    'a3',    REG_A3,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  41.     regtbl    'a4',    REG_A4,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  42.     regtbl    'a5',    REG_A5,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  43.     regtbl    'a6',    REG_A6,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  44.     regtbl    'a7',    REG_A7,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  45.     regtbl    'sp',    REG_A7,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  46.  
  47.     regtbl    'zpc',    REG_ZPC,          C020|C030|C040|C060
  48.  
  49.     regtbl    'pc',    REG_PC,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  50.     regtbl    'ccr',    REG_CCR,    C000|C010|C020|C030|C040|C060|C520|C530|C540
  51.     regtbl    'sr',    REG_SR,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  52.     regtbl    'usp',    REG_USP,    C000|C010|C020|C030|C040|C060
  53.  
  54.     regtbl    'fp0',    REG_FP0,                C040|C060|CFPP
  55.     regtbl    'fp1',    REG_FP1,                C040|C060|CFPP
  56.     regtbl    'fp2',    REG_FP2,                C040|C060|CFPP
  57.     regtbl    'fp3',    REG_FP3,                C040|C060|CFPP
  58.     regtbl    'fp4',    REG_FP4,                C040|C060|CFPP
  59.     regtbl    'fp5',    REG_FP5,                C040|C060|CFPP
  60.     regtbl    'fp6',    REG_FP6,                C040|C060|CFPP
  61.     regtbl    'fp7',    REG_FP7,                C040|C060|CFPP
  62.  
  63.     regtbl    'sfc',    REG_SFC,         C010|C020|C030|C040|C060
  64.     regtbl    'dfc',    REG_DFC,         C010|C020|C030|C040|C060
  65.     regtbl    'vbr',    REG_VBR,         C010|C020|C030|C040|C060|C520|C530|C540
  66.  
  67.     regtbl    'msp',    REG_MSP,          C020|C030|C040
  68.     regtbl    'isp',    REG_ISP,          C020|C030|C040
  69.     regtbl    'cacr',    REG_CACR,          C020|C030|C040|C060|C520|C530|C540
  70.     regtbl    'caar',    REG_CAAR,          C020|C030
  71.  
  72.     regtbl    'buscr',REG_BUSCR,                 C060
  73.     regtbl    'pcr',    REG_PCR,                 C060
  74.  
  75.     regtbl    'fpcr',    REG_FPCR,                C040|C060|CFPP
  76.     regtbl    'fpsr',    REG_FPSR,                C040|C060|CFPP
  77.     regtbl    'fpiar',REG_FPIAR,                C040|C060|CFPP
  78.  
  79.     regtbl    'r0',    REG_D0,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  80.     regtbl    'r1',    REG_D1,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  81.     regtbl    'r2',    REG_D2,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  82.     regtbl    'r3',    REG_D3,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  83.     regtbl    'r4',    REG_D4,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  84.     regtbl    'r5',    REG_D5,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  85.     regtbl    'r6',    REG_D6,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  86.     regtbl    'r7',    REG_D7,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  87.     regtbl    'r8',    REG_A0,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  88.     regtbl    'r9',    REG_A1,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  89.     regtbl    'r10',    REG_A2,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  90.     regtbl    'r11',    REG_A3,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  91.     regtbl    'r12',    REG_A4,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  92.     regtbl    'r13',    REG_A5,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  93.     regtbl    'r14',    REG_A6,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  94.     regtbl    'r15',    REG_A7,        C000|C010|C020|C030|C040|C060|C520|C530|C540
  95.  
  96.     regtbl    'zd0',    REG_ZD0,          C020|C030|C040|C060
  97.     regtbl    'zd1',    REG_ZD1,          C020|C030|C040|C060
  98.     regtbl    'zd2',    REG_ZD2,          C020|C030|C040|C060
  99.     regtbl    'zd3',    REG_ZD3,          C020|C030|C040|C060
  100.     regtbl    'zd4',    REG_ZD4,          C020|C030|C040|C060
  101.     regtbl    'zd5',    REG_ZD5,          C020|C030|C040|C060
  102.     regtbl    'zd6',    REG_ZD6,          C020|C030|C040|C060
  103.     regtbl    'zd7',    REG_ZD7,          C020|C030|C040|C060
  104.     regtbl    'za0',    REG_ZA0,          C020|C030|C040|C060
  105.     regtbl    'za1',    REG_ZA1,          C020|C030|C040|C060
  106.     regtbl    'za2',    REG_ZA2,          C020|C030|C040|C060
  107.     regtbl    'za3',    REG_ZA3,          C020|C030|C040|C060
  108.     regtbl    'za4',    REG_ZA4,          C020|C030|C040|C060
  109.     regtbl    'za5',    REG_ZA5,          C020|C030|C040|C060
  110.     regtbl    'za6',    REG_ZA6,          C020|C030|C040|C060
  111.     regtbl    'za7',    REG_ZA7,          C020|C030|C040|C060
  112.     regtbl    'zsp',    REG_ZA7,          C020|C030|C040|C060
  113.     regtbl    'zr0',    REG_ZD0,          C020|C030|C040|C060
  114.     regtbl    'zr1',    REG_ZD1,          C020|C030|C040|C060
  115.     regtbl    'zr2',    REG_ZD2,          C020|C030|C040|C060
  116.     regtbl    'zr3',    REG_ZD3,          C020|C030|C040|C060
  117.     regtbl    'zr4',    REG_ZD4,          C020|C030|C040|C060
  118.     regtbl    'zr5',    REG_ZD5,          C020|C030|C040|C060
  119.     regtbl    'zr6',    REG_ZD6,          C020|C030|C040|C060
  120.     regtbl    'zr7',    REG_ZD7,          C020|C030|C040|C060
  121.     regtbl    'zr8',    REG_ZA0,          C020|C030|C040|C060
  122.     regtbl    'zr9',    REG_ZA1,          C020|C030|C040|C060
  123.     regtbl    'zr10',    REG_ZA2,          C020|C030|C040|C060
  124.     regtbl    'zr11',    REG_ZA3,          C020|C030|C040|C060
  125.     regtbl    'zr12',    REG_ZA4,          C020|C030|C040|C060
  126.     regtbl    'zr13',    REG_ZA5,          C020|C030|C040|C060
  127.     regtbl    'zr14',    REG_ZA6,          C020|C030|C040|C060
  128.     regtbl    'zr15',    REG_ZA7,          C020|C030|C040|C060
  129.  
  130.     regtbl    'opc',    REG_OPC,    C000|C010|C020|C030|C040|C060|C520|C530|C540
  131.  
  132.     regtbl    'crp',    REG_CRP,               C030|CMMU
  133.     regtbl    'srp',    REG_SRP,               C030|C040|C060|CMMU
  134.     regtbl    'tc',    REG_TC,                   C030|C040|C060|CMMU
  135.     regtbl    'tcr',    REG_TC,                          C520|C530|C540
  136.     regtbl    'tt0',    REG_TT0,               C030
  137.     regtbl    'tt1',    REG_TT1,               C030
  138.     regtbl    'mmusr',REG_MMUSR,               C030|C040|CMMU
  139.     regtbl    'psr',    REG_MMUSR,               C030|C040|CMMU
  140.  
  141.     regtbl    'urp',    REG_URP,                C040|C060
  142.     regtbl    'itt0',    REG_ITT0,                C040|C060
  143.     regtbl    'itt1',    REG_ITT1,                C040|C060
  144.     regtbl    'dtt0',    REG_DTT0,                C040|C060
  145.     regtbl    'dtt1',    REG_DTT1,                C040|C060
  146.     regtbl    'acr0',    REG_ITT0,                      C520|C530|C540
  147.     regtbl    'acr1',    REG_ITT1,                      C520|C530|C540
  148.     regtbl    'acr2',    REG_DTT0,                      C520|C530|C540
  149.     regtbl    'acr3',    REG_DTT1,                      C520|C530|C540
  150.     regtbl    'rombar',    REG_ROMBAR,                  C520|C530|C540
  151.     regtbl    'rambar',    REG_RAMBAR0,                  C520|C530|C540
  152.     regtbl    'rambar0',    REG_RAMBAR0,                  C520|C530|C540
  153.     regtbl    'rambar1',    REG_RAMBAR1,                  C520|C530|C540
  154.     regtbl    'mbar',    REG_MBAR,                      C520|C530|C540
  155.     regtbl    'acc',    REG_ACC,                      C520|C530|C540
  156.     regtbl    'macsr',    REG_MACSR,                  C520|C530|C540
  157.     regtbl    'mask',    REG_MASK,                      C520|C530|C540
  158.  
  159.     regtbl    'nc',    REG_NC,                    C040|C060
  160.     regtbl    'dc',    REG_DC,                    C040|C060
  161.     regtbl    'ic',    REG_IC,                    C040|C060
  162.     regtbl    'bc',    REG_BC,                    C040|C060|C520|C530|C540
  163.  
  164.     regtbl    'drp',    REG_DRP,    CMMU
  165.     regtbl    'cal',    REG_CAL,    CMMU
  166.     regtbl    'val',    REG_VAL,    CMMU
  167.     regtbl    'scc',    REG_SCC,    CMMU
  168.     regtbl    'ac',    REG_AC,        CMMU
  169.     regtbl    'pcsr',    REG_PCSR,    CMMU
  170.     regtbl    'bad0',    REG_BAD0,    CMMU
  171.     regtbl    'bad1',    REG_BAD1,    CMMU
  172.     regtbl    'bad2',    REG_BAD2,    CMMU
  173.     regtbl    'bad3',    REG_BAD3,    CMMU
  174.     regtbl    'bad4',    REG_BAD4,    CMMU
  175.     regtbl    'bad5',    REG_BAD5,    CMMU
  176.     regtbl    'bad6',    REG_BAD6,    CMMU
  177.     regtbl    'bad7',    REG_BAD7,    CMMU
  178.     regtbl    'bac0',    REG_BAC0,    CMMU
  179.     regtbl    'bac1',    REG_BAC1,    CMMU
  180.     regtbl    'bac2',    REG_BAC2,    CMMU
  181.     regtbl    'bac3',    REG_BAC3,    CMMU
  182.     regtbl    'bac4',    REG_BAC4,    CMMU
  183.     regtbl    'bac5',    REG_BAC5,    CMMU
  184.     regtbl    'bac6',    REG_BAC6,    CMMU
  185.     regtbl    'bac7',    REG_BAC7,    CMMU
  186.  
  187.     .dc.b    0
  188.  
  189.  
  190. ;----------------------------------------------------------------
  191. ;    演算子名テーブル
  192. ;----------------------------------------------------------------
  193. opname_tbl::
  194.     .dc.b    'neg',0        ;$01    -
  195.     .dc.b    'pos',0        ;$02    +
  196.     .dc.b    'not',0        ;$03
  197.     .dc.b    'high',0    ;$04
  198.     .dc.b    'low',0        ;$05
  199.     .dc.b    'highw',0    ;$06
  200.     .dc.b    'loww',0    ;$07
  201.     .dc.b    'nul',0        ;$08
  202.     .dc.b    'mul',0        ;$09    *
  203.     .dc.b    'div',0        ;$0A    /
  204.     .dc.b    'mod',0        ;$0B
  205.     .dc.b    'shr',0        ;$0C    >>
  206.     .dc.b    'shl',0        ;$0D    << .<<.
  207.     .dc.b    'asr',0        ;$0E       .>>.
  208.     .dc.b    'sub',0        ;$0F    -
  209.     .dc.b    'add',0        ;$10    +
  210.     .dc.b    'eq',0        ;$11    =  ==
  211.     .dc.b    'ne',0        ;$12    <> !=
  212.     .dc.b    'lt',0        ;$13    <
  213.     .dc.b    'le',0        ;$14    <=
  214.     .dc.b    'gt',0        ;$15    >
  215.     .dc.b    'ge',0        ;$16    >=
  216.     .dc.b    'slt',0        ;$17    .<.
  217.     .dc.b    'sle',0        ;$18    .<=.
  218.     .dc.b    'sgt',0        ;$19    .>.
  219.     .dc.b    'sge',0        ;$1A    .>=.
  220.     .dc.b    'and',0        ;$1B    &
  221.     .dc.b    'xor',0        ;$1C    ^ .eor.
  222.     .dc.b    'or',0        ;$1D    |
  223.  
  224.     .dc.b    'notb',0    ;    .notb.
  225.     .dc.b    'notw',0    ;    .notw.
  226.  
  227.     .dc.b    'sizeof',0    ;    .sizeof.
  228.     .dc.b    'defined',0    ;    .defined.
  229.  
  230.     .dc.b    '<<',0
  231.     .dc.b    '>>',0
  232.     .dc.b    '<=',0
  233.     .dc.b    '>=',0
  234.     .dc.b    '<',0
  235.     .dc.b    '>',0
  236.     .dc.b    'eor',0
  237.     .dc.b    -1
  238.  
  239. opconv_tbl::
  240.     .dc.b    OP_SHL,OP_ASR,OP_SLE,OP_SGE,OP_SLT,OP_SGT,OP_XOR
  241.     .even
  242.  
  243.  
  244. ;----------------------------------------------------------------
  245.     .end
  246.  
  247. ;----------------------------------------------------------------
  248. ;    $Log: regname.s,v $
  249. ;    Revision 1.7  1999  6/ 9(Wed) 21:05:13 M.Kamada
  250. ;    +85 演算子.notb./.notw.を追加
  251. ;
  252. ;    Revision 1.6  1999  2/28(Sun) 00:31:06 M.Kamada
  253. ;    +82 ColdFireのときCPUSHLがアセンブルできなかった
  254. ;
  255. ;    Revision 1.5  1999  2/27(Sat) 23:44:58 M.Kamada
  256. ;    +81 ソースリストのフォーマットを変更(実行ファイルは+80とまったく同じ)
  257. ;
  258. ;    Revision 1.4  1999  2/23(Tue) 02:26:27 M.Kamada
  259. ;    +80 ColdFire対応
  260. ;    +80 .sizeof.と.defined.を追加
  261. ;
  262. ;    Revision 1.3  1996 11/13(Wed) 15:33:45 M.Kamada
  263. ;    +02 68060対応
  264. ;        BUSCRとPCRを追加
  265. ;
  266. ;    Revision 1.2  1994/03/05  12:20:52  nakamura
  267. ;    レジスタ名zd0~zd7,za0~za7,opcを追加
  268. ;
  269. ;    Revision 1.1  1994/02/13  14:17:46  nakamura
  270. ;    Initial revision
  271. ;
  272. ;
  273.